/**
 * 
 */
package net.mikoo.seals.biz.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.mybatis.spring.annotation.MapperScan;

import net.mikoo.seals.model.UserLogin;
import net.mikoo.seals.model.UserLoginHistory;
import net.mikoo.seals.model.UserLoginQuery;


/**
 * @author huangxm
 *
 */
@MapperScan
public interface UserLoginMapper {
	
	/**
	 * 添加用户登录信息
	 * @param userLogin
	 * @return
	 */
	public Integer insert(UserLogin userLogin);
	
	
	/**
	 * 删除用户登录信息
	 * @param userLoginId
	 * @return
	 */
	public Integer deleteByPrimaryKey(Long userLoginId);
	
	/**
	 * 更新用户登录信息
	 * @param userLogin
	 * @return
	 */
	public Integer update(UserLogin userLogin);
	
	/**
	 * 查询用户信息
	 * @param userLoginId
	 * @return
	 */
	public UserLogin selectByUserLoginId(String userLoginId);
	public UserLogin selectByPartyId(Long partyId);
	
	public UserLogin selectByOpenId(String openId);
	
	/**
	 * 查询用户信息不包含当前用户id
	 * @param userLoginId
	 * @param notContainUserId
	 * @return
	 */
	public UserLogin selectByNotContainUserId(@Param("userLoginId")String userLoginId,@Param("notContainUserId")String notContainUserId);


	public Integer countTotal(UserLoginQuery userLoginQuery);

	public List<UserLogin> selectForPage(UserLoginQuery userLoginQuery);

	public int insertHistory(UserLoginHistory userLoginHistory);
	
	/**
	 * 删除当事人
	 * 
	 * @param partyId
	 * @return 删除结果
	 */
	public Integer deleteByPartyId(Long partyId);
}
